package com.example.demo.server;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;

@Service//表示是后台的一个服务
public class MyAsyncService {

    @Autowired
    JavaMailSenderImpl mailSender;

    @Async//表示该方法是异步执行的
    public void sendSms(String email,int code) throws InterruptedException {
        Long satrt = System.currentTimeMillis();
//        Thread.sleep(2000);//延时2秒执行后面的代码，模拟发邮件给email耗时
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("584135372@qq.com");//发件人，要和配置文件的一致
        message.setTo(email);//收件人地址
        message.setSubject("【学生管理系统验证码】");//主题
        message.setText("欢迎注册学生管理系统，以下是您注册需要用的验证码："+code+",有效期为3分钟，请及时前前往注册，过期无效。");//内容
        mailSender.send(message);//发送

        Long end = System.currentTimeMillis();
        System.out.println("异步任务发送邮件执行完成耗时："+(end-satrt));
    }


}
